/* 表单样式 */
.form-container {
  background-color: #fff;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  margin: 0 auto;
}

/* .form-group {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
} */

.form-group .title {
  display: block;
  margin: 5px;
  font-weight: bold;
}


.form-group .text-danger {
  color: #f56c6c;
  font-size: 12px;
  line-height: 1;
  padding-top: 4px;
  position: absolute;
  top: 100%;
  left: 0;
}

.form-group .error input,
.form-group .error select {
  border-color: red;
}

.form-btn {
  background-color: #4CAF50;
  color: white;
  padding: 10px 15px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  width: 100%;
  font-size: 1em;
}

.form-btn:disabled {
  background-color: #ccc;
  cursor: not-allowed;
}

/* 单选框样式 */

.el-radio {
  display: inline-block;
  position: relative;
  white-space: nowrap;
  margin-right: 10px;
  cursor: pointer;
}

.el-radio__input {
  white-space: nowrap;
  position: relative;
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 14px;
  border: 1px solid #dcdcdc;
  border-radius: 50%;
  vertical-align: middle;
  cursor: pointer;
  box-sizing: border-box;
}

.el-radio__input input[type="radio"] {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
  z-index: 1;
}

.el-radio__input .el-radio__inner {
  border-radius: 50%;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transition: all .3s;
}

.el-radio__input input[type="radio"]:checked+.el-radio__inner {
  background-color: #409EFF;
  border-color: #409EFF;
}

.el-radio__input input[type="radio"]:disabled+.el-radio__inner {
  background-color: #f5f7fa;
  border-color: #e4e4e4;
  cursor: not-allowed;
}

.el-radio__input input[type="radio"]:disabled:checked+.el-radio__inner {
  background-color: #c6e2ff;
  border-color: #c6e2ff;
}

.el-radio__label {
  font-size: 14px;
  vertical-align: middle;
  margin-left: 8px;
}

/* 复选框样式 */
.checkbox-group {
  display: flex;
  height: 51px;
  line-height: 51px;
}

.checkbox-item {
  display: block;
  margin-bottom: 10px;
}



/* 输入框样式 */
.el-input__inner {
  cursor: pointer;
}

.el-icon-arrow-up {
  transition: transform .3s;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.is-open .el-icon-arrow-up {
  transform: translateY(-50%) rotate(180deg);
}

/* 日期选择器样式 */
.el-date-picker {
  width: 322px;
  position: relative;
}

.el-date-picker__header {
  margin: 12px;
  text-align: center;
}

.el-date-picker__prev-btn,
.el-date-picker__next-btn {
  cursor: pointer;
}

.el-date-table td {
  width: 32px;
  height: 32px;
  padding: 4px 0;
  box-sizing: border-box;
  text-align: center;
  cursor: pointer;
  position: relative;
}

.el-date-table td.current:not(.selected) span {
  color: #409EFF;
}

.el-date-table td.selected span {
  background-color: #409EFF;
  color: #fff;
}

.el-date-table td:hover span {
  background-color: #f5f7fa;
}

/* 日期范围选择器样式 */

.el-date-range-picker {
  position: relative;
  display: inline-block;
  margin: 20px;
}

.el-date-editor.el-input {
  width: 220px;
}

.separator {
  display: inline-block;
  margin: 0 8px;
  color: #606266;
}

.el-picker-panel {
  position: absolute;
  z-index: 2000;
  background: #fff;
  border: 1px solid #e4e7ed;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);
  margin-top: 5px;
}

/* 导航菜单样式 */

.el-menu {
  border-right: none;
}

.el-menu--horizontal {
  border-bottom: solid 1px #e6e6e6;
}

/* 自定义动画效果 */
.el-menu--collapse-transition {
  transition: height .3s ease;
  overflow: hidden;
}

.el-menu-item.is-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.el-menu--inline {
  z-index: 100;
  border: none;
  border-radius: 2px;
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);
}


/* ElementUI 样式还原 */
.el-descriptions {
  font-size: 14px;
  color: #606266;
  box-sizing: border-box;
  margin: 20px 0;
}

.el-descriptions__title {
  font-size: 16px;
  color: #303133;
  margin-bottom: 16px;
  font-weight: bold;
}

.el-descriptions__body {
  background-color: #FFFFFF;
}

/* 表格布局 */
.el-descriptions__body table {
  width: 100%;
  border-collapse: collapse;
}

/* 边框模式 */
.el-descriptions.is-border .el-descriptions__cell {
  border: 1px solid #EBEEF5;
  padding: 12px 10px;
}

/* 无边框模式 */
.el-descriptions:not(.is-border) .el-descriptions__cell {
  padding-bottom: 12px;
}

.el-descriptions__cell-label {
  color: #909399;
  line-height: 1.5;
}

.el-descriptions__cell-content {
  color: #606266;
  line-height: 1.5;
}

/* 垂直布局 */
.el-descriptions.is-vertical .el-descriptions__cell {
  display: block;
  width: 100% !important;
  border-bottom: none;
  padding: 12px 0;
}

.el-descriptions.is-vertical .el-descriptions__cell-label {
  width: 100%;
  margin-bottom: 8px;
}

/* 响应式布局 */
@media (max-width: 768px) {
  .el-descriptions__body {
    display: block;
  }
  
  .el-descriptions__cell {
    width: 100% !important;
    display: block !important;
    border-bottom: 1px solid #EBEEF5;
  }
}

.bg-purple-dark {
  background: #99a9bf;
}
.bg-purple {
  background: #d3dce6;
}
.bg-purple-light {
  background: #e5e9f2;
}
.grid-content {
  border-radius: 4px;
  min-height: 36px;
}

.demo-block {
  margin-bottom: 24px;
}

.el-row {
  margin-bottom: 20px;
}

.menu {
  height: calc(100vh - 58px);
  background-color: #545c64;
  margin-right: -1px;
}

html, body {
  overflow: hidden;
  margin: 0;
  padding: 0;
}

::-webkit-scrollbar {
  width: 6px;
  height: 11px;
}

::-webkit-scrollbar-thumb, ::-webkit-scrollbar-thumb:hover {
  border-radius: 5px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .2);
}

::-webkit-scrollbar-thumb {
  background-color: rgba(85, 85, 85, .4);
}

.el-aside {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
}